package com.flyduck.vueshop.system.admin.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.flyduck.vueshop.system.admin.vo.*;

import java.util.List;

/**
 * <p>
 * SysRoleService
 * </p>
 *
 * @author flyduck
 * @since 2024-06-03
 */
public interface AdminRoleService {
    Page<AdminRoleRespVO> getRolePage(Page page, AdminRoleQueryReqVO adminRoleQueryReqVO);

    AdminRoleDetailsRespVO getRoleDetailsById(Long id);

    void saveRole(AdminRoleSaveReqVO adminRoleSaveReqVO);

    void updateRole(AdminRoleUpdateReqVO adminRoleUpdateReqVO);

    void batchDeleteByIds(List<Long> ids);

    void assignMenuListToRole(Long roleId, List<Long> menuIds);
}
